package org.tea.inventory.model.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.tea.inventory.base.validation.groups.CreateGroup;
import org.tea.inventory.base.validation.groups.UpdateGroup;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * 表彰
 */
@ApiModel(value = "CustomerTrewardDto")
@Data
@NoArgsConstructor
public class CustomerTrewardDto implements Serializable {
    @ApiModelProperty(value = "")
    @NotNull(message = "表彰不能为空", groups = {UpdateGroup.class})
    private Long id;

    /**
     * 上传用户
     */
    @ApiModelProperty(value = "上传用户")
    private String loginId;

    /**
     * 客户名称
     */
    @ApiModelProperty(value = "客户名称")
    @NotBlank(message = "客户名称不能为空", groups = {CreateGroup.class})
    private String customerName;

    /**
     * 集体ids
     */
    @ApiModelProperty(value = "集体ids")
    private List<String> groupIds;

    /**
     * 表彰类型   0-普通表彰 1-集体表彰
     */
    @ApiModelProperty(value = "表彰类型   0-个人表彰 1-集体表彰")
    @NotBlank(message = "表彰类型不能为空", groups = {CreateGroup.class})
    private String type;

    /**
     * 表彰类别 一类 二类 其他
     */
    @ApiModelProperty(value = "表彰类别 一类 二类 其他")
    private String category;

    /**
     * 标题
     */
    @ApiModelProperty(value = "标题")
    @NotBlank(message = "标题不能为空", groups = {CreateGroup.class})
    private String title;

    /**
     * 积分
     */
    @ApiModelProperty(value = "积分")
    private Long integral;

    /**
     * 文件ids
     */
    @ApiModelProperty(value = "文件ids")
    @NotBlank(message = "附件不能为空", groups = {CreateGroup.class})
    private String fileIds;

    /**
     * 状态 -1:删除, 10-审核中, 11-通过  12-驳回 20-审核中 21-通过 22-驳回
     */
    @ApiModelProperty(value = "状态 -1:删除, 10-审核中, 11-通过  12-驳回 20-审核中 21-通过 22-驳回")
    private String status;

    /**
     * 说明
     */
    @ApiModelProperty(value = "说明")
    @NotBlank(message = "说明不能为空", groups = {CreateGroup.class})
    private String content;


}